package org.batatasframework.support.database.sql.where;

import org.batatasframework.support.database.metadatas.FieldMetadata;

import cn.bonoon.kernel.util.Opt;

public interface QueryFragmentBuilder {
	/*
	 * 这种对应没有参数的查询条件，如：is null等
	 */
	QueryFragment build(Opt opt) throws Exception;
	
	QueryFragment build(Object value) throws Exception;
	/**
	 * 对应单个操作参数的数据，如："=","<>"等
	 */
	QueryFragment build(Opt opt, Object value) throws Exception;
	
	QueryFragment in(Object...values) throws Exception;
	QueryFragment not(Object...values) throws Exception;
	
	FieldMetadata getFieldMetadata();
}
